package com.temp.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.temp.dto.RobotCampaignDTO;
import com.temp.dto.SearchCampaignDTO;
import com.temp.dto.SetCampaignDTO;
import com.temp.entity.Campaign;
import com.temp.vo.CampaignDetailVO;
import com.temp.vo.CampaignStatusVO;
import com.temp.vo.CustomPageVO;

import java.util.List;
import java.util.Map;

public interface CampaignService extends IService<Campaign> {

    Map<String, Object> findCampaignDataByUserId(Long userId);

    List<CampaignStatusVO> findCampaignByStatus(SearchCampaignDTO campaignDTO);

    CustomPageVO<CampaignDetailVO> findAdminCampaignByStatus(SearchCampaignDTO campaignDTO);

    CampaignStatusVO findCampaignById(Long id);

    boolean updateCampaignSet(SetCampaignDTO campaignDTO);

    Campaign getCampaignForUpdate(Long id);

    Integer findAllNotEndedCampaign(Long userId);

    List<Campaign> findAllCampaignByRobot(RobotCampaignDTO robotCampaignDTO);
}
